import { defineConfig } from 'vite';
import vue from '@vitejs/plugin-vue';
import AutoImport from 'unplugin-auto-import/vite';
import Components from 'unplugin-vue-components/vite';
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers';
import path from 'path';
// https://vitejs.dev/config/
export default defineConfig({
  plugins: [
    vue(),
    // ...
    AutoImport({
      resolvers: [ElementPlusResolver()],
    }),
    Components({
      resolvers: [ElementPlusResolver()],
    }),
  ],
  resolve: {
    alias: {
      '@': path.resolve(__dirname, './src'),
    },
  },
  // 跨域
  // server: {
  //   proxy: {
  //     '/api': {
  //       target: 'http://localhost:3000',
  //       changeOrigin: true,
  //       rewrite: (path) => path.replace(/^\/api/, ''),
  //     },
  //   },
  // },
  // 本地运行配置，及反向代理配置
  // server: {
  //   cors: true, // 默认启用并允许任何源
  //   open: true, // 在服务器启动时自动在浏览器中打开应用程序
  //   //反向代理配置，注意rewrite写法，开始没看文档在这里踩了坑
  //   proxy: {// 本地开发环境通过代理实现跨域，生产环境使用 nginx 转发
  //     '/api': {
  //       target: 'http://39.106.221.6:8090/', // 通过代理接口访问实际地址。这里是实际访问的地址。vue会通过代理服务器来代理请求
  //       changeOrigin: true,
  //       ws: true,  // 允许websocket代理
  //       rewrite: (path) => path.replace(/^\/api/, '') // 将api替换为空
  //     }
  //   }
  // },

  // 打包配置
  build: {
    outDir: 'dist',
    assetsDir: 'assets',
    sourcemap: false,
    terserOptions: {
      compress: {
        drop_console: true,
        drop_debugger: true,
      },
    },
  },

})
